unit UUsuario;

interface

uses UUsuarioModel;

type
  TUsuario = class

    private
      FID: Integer;
      FNome: String;
      FLogin: String;
      FDataCadastro: TDateTime;
      FPergunta: String;
      FResposta: String;

      function GetDataUsuario: TDateTime;
      function GetIDUsuario: Integer;
      function GetLoginUsuario: String;
      function GetNomeUsuario: String;
      function GetPerguntaUsuario: String;
      function GetRespostaUsuario: String;

      procedure SetDataUsuario(const Value: TDateTime);
      procedure SetIDUsuario(const Value: Integer);
      procedure SetLoginUsuario(const Value: String);
      procedure SetNomeUsuario(const Value: String);
      procedure SetPerguntaUsuario(const Value: String);
      procedure SetRespostaUsuario(const Value: String);

    protected

    public
      function SetLembrarSenha(const Usuario: String): String;
      property ID: Integer read GetIDUsuario write SetIDUsuario;
      property Nome: String read GetNomeUsuario write SetNomeUsuario;
      property Login: String read GetLoginUsuario write SetLoginUsuario;
      property Data: TDateTime read GetDataUsuario write SetDataUsuario;
      property Pergunta: String read GetPerguntaUsuario write SetPerguntaUsuario;
      property Resposta: String read GetRespostaUsuario write SetRespostaUsuario;
  end;

implementation

{ TUsuario }

function TUsuario.GetDataUsuario: TDateTime;
begin
  Result := FDataCadastro;
end;

function TUsuario.GetIDUsuario: Integer;
begin
  Result := FID;
end;

function TUsuario.GetLoginUsuario: String;
begin
  Result := FLogin;
end;

function TUsuario.GetNomeUsuario: String;
begin
  Result := FNome;
end;

function TUsuario.GetPerguntaUsuario: String;
begin
  Result := FPergunta;
end;

function TUsuario.GetRespostaUsuario: String;
begin
  Result := FResposta;
end;

procedure TUsuario.SetDataUsuario(const Value: TDateTime);
begin
  FDataCadastro := Value;
end;

procedure TUsuario.SetIDUsuario(const Value: Integer);
begin
  FID := Value;
end;

function TUsuario.SetLembrarSenha(const Usuario: String): String;
  var
    objUsuarioModel: TUsuarioModel;
begin
  if(Usuario <> '')then
  begin
    objUsuarioModel := TUsuarioModel.Create;
    objUsuarioModel.Usuario := Usuario;
    Self.SetPerguntaUsuario(objUsuarioModel.GetUsuarioPergunta(Usuario));
  end;
end;

procedure TUsuario.SetLoginUsuario(const Value: String);
begin
  FLogin := Value;
end;

procedure TUsuario.SetNomeUsuario(const Value: String);
begin
  FNome := Value;
end;

procedure TUsuario.SetPerguntaUsuario(const Value: String);
begin
  FPergunta := Value;
end;

procedure TUsuario.SetRespostaUsuario(const Value: String);
  var
    objUsuarioModel: TUsuarioModel;
begin
  if(Value <> '')then
  begin
    objUsuarioModel := TUsuarioModel.Create;
    if(objUsuarioModel.Resposta(Value))then
    begin
      Self.SetRespostaUsuario(objUsuarioModel.GetSenha);
    end;
    //Self.SetPerguntaUsuario(objUsuarioModel.GetUsuarioPergunta(Usuario));
  end;

  FResposta := Value;
end;

end.
 